home *** CD-ROM | disk | FTP | other *** search
- /*
- ** $VER: blitter.e V0.9B
- **
- ** Blitter Object Definitions.
- **
- ** (C) Copyright 1996-1997 DreamWorld Productions.
- ** All Rights Reserved
- */
-
- OPT MODULE
- OPT EXPORT
- OPT PREPROCESS
-
- MODULE 'dpkernel/dpkernel','graphics/pictures',
- 'graphics/screens','system/register'
-
- /****************************************************************************
- ** Bitmap Object.
- */
-
- CONST BMPVERSION = 1,
- TAGS_BITMAP = $FFFB0000 OR ID_BITMAP
-
- OBJECT bitmap
- head[1] :ARRAY OF head /* Standard structure header */
- data :PTR TO CHAR /* Pointer to bitmap data area */
- width :INT /* Width */
- bytewidth :INT /* ByteWidth */
- height :INT /* Height */
- type :INT /* Screen type */
- linemod :LONG /* Line differential */
- planemod :LONG /* Plane differential */
- parent :PTR TO head /* Bitmap owner */
- restore :LONG /* Restore list for this bitmap, if any */
- size :LONG /* Total size of the bitmap in bytes */
- memtype :LONG /* Memory type to use in allocation */
- planes :INT /* Amount of planes */
- emp :INT /* Reserved */
- amtcolours :LONG /* Maximum amount of colours available */
- ENDOBJECT
-
- CONST BMA_Data = TAPTR OR 12,
- BMA_Width = TWORD OR 16,
- BMA_ByteWidth = TWORD OR 18,
- BMA_Height = TWORD OR 20,
- BMA_Type = TWORD OR 22,
- BMA_LineMod = TLONG OR 24,
- BMA_PlaneMod = TLONG OR 28,
- BMA_Parent = TAPTR OR 32,
- BMA_Restore = TAPTR OR 36,
- BMA_Size = TLONG OR 40,
- BMA_MemType = TLONG OR 44,
- BMA_Planes = TWORD OR 48,
- BMA_AmtColours = TLONG OR 52
-
- /***************************************************************************
- ** Restore Object.
- */
-
- CONST RSTVERSION = 1,
- TAGS_RESTORE = $FFFB0000 OR ID_RESTORE
-
- OBJECT restore
- head[1] :ARRAY OF head /* Standard header */
- buffers :INT /* Amount of screen buffers */
- entries :INT /* Amount of entries */
- owner :PTR TO head /* Owner of the restorelist, ie bitmap */
- ENDOBJECT
-
- CONST RSA_Buffers = 12 OR TWORD,
- RSA_Entries = 14 OR TWORD,
- RSA_Owner = 16 OR TAPTR
-
- /**************************************************************************/
-
- OBJECT mbentry /* MBob Entry Structure */
- xcoord :INT
- ycoord :INT
- frame :INT
- ENDOBJECT
-
- OBJECT framelist
- gfx_xcoord :INT
- gfx_ycoord :INT
- msk_xcoord :INT
- msk_ycoord :INT
- ENDOBJECT
-
- /***************************************************************************
- ** Bob Object.
- */
-
- CONST BOBVERSION = 1,
- TAGS_BOB = $FFFB0000 OR ID_BOB
-
- OBJECT bob
- head[1] :ARRAY OF head -> Standard structure header.
- gfxdata :LONG -> Pointer to base of BOB graphics.
- maskdata :LONG -> Pointer to base of BOB masks.
- gfxcoords :PTR TO framelist -> Pointer to frame list.
- frame :INT -> Current frame.
- srcwidth :INT -> Modulo (skip in source) in bytes.
- width :INT -> Width in pixels.
- bytewidth :INT -> Width in bytes.
- xcoord :INT -> To X pixel.
- ycoord :INT -> To Y pixel.
- height :INT -> Height in pixels.
- clipLX :INT -> Left X border in bytes (0/8)
- clipTY :INT -> Top Y border (0)
- clipRX :INT -> Right X border in bytes (320/8)
- clipBY :INT -> Bottom Y border (256)
- fplane :INT -> 1st Plane to blit to (planar only)
- planes :INT -> Amount of planes
- propheight :INT
- propwidth :INT
- buffers :INT
- planesize :LONG -> Size Of Plane Source (planar only)
- attrib :LONG -> Attributes like CLIP and MASK.
- srcbitmap :PTR TO bitmap
- empty :INT
- srcmaskwidth :INT
- source :PTR TO picture
- directgfx :PTR TO LONG
- screen :PTR TO screen
- destbitmap :PTR TO bitmap
- maskcoords :PTR TO framelist
- directmasks :LONG
- amtframes :INT
- ENDOBJECT
-
- CONST BBA_GfxData = 12 OR TAPTR,
- BBA_MaskData = 16 OR TAPTR,
- BBA_GfxCoords = 20 OR TAPTR,
- BBA_Frame = 24 OR TWORD,
- BBA_SrcWidth = 26 OR TWORD,
- BBA_Width = 28 OR TWORD,
- BBA_ByteWidth = 30 OR TWORD,
- BBA_XCoord = 32 OR TWORD,
- BBA_YCoord = 34 OR TWORD,
- BBA_Height = 36 OR TWORD,
- BBA_ClipLX = 38 OR TWORD,
- BBA_ClipTY = 40 OR TWORD,
- BBA_ClipRX = 42 OR TWORD,
- BBA_ClipBY = 44 OR TWORD,
- BBA_FPlane = 46 OR TWORD,
- BBA_Planes = 48 OR TWORD,
- BBA_PropHeight = 50 OR TWORD,
- BBA_PropWidth = 52 OR TWORD,
- BBA_Buffers = 54 OR TWORD,
- BBA_PlaneSize = 56 OR TLONG,
- BBA_Attrib = 60 OR TLONG,
- BBA_Empty = 64 OR TWORD,
- BBA_SrcMaskWidth = 70 OR TWORD,
- BBA_Source = 72 OR TAPTR,
- BBA_DirectGfx = 76 OR TAPTR,
- BBA_Screen = 80 OR TAPTR,
- BBA_DestBitmap = 84 OR TAPTR,
- BBA_MaskCoords = 88 OR TAPTR,
- BBA_DirectMasks = 92 OR TAPTR,
- BBA_AmtFrames = 96 OR TWORD,
-
- BBA_SourceTags = TSTEPIN OR TTRIGGER OR 72
-
- /***********************************************************************************
- ** Multple Bob object.
- */
-
- CONST MBOBVERSION = 1,
- TAGS_MBOB = $FFFB0000 OR ID_MBOB
-
- OBJECT mbob
- head[1] :ARRAY OF head -> Standard header.
- gfxdata :LONG -> Pointer to base of BOB graphics.
- maskdata :LONG -> Pointer to base of BOB masks.
- framelist :PTR TO framelist -> Pointer to frame list.
- amtentries :INT -> Amount of entries.
- srcwidth :INT -> Modulo (skip in source) in bytes.
- width :INT -> Width in pixels.
- bytewidth :INT -> Width in bytes.
- height :INT -> Height in pixels.
- entrylist :LONG -> Pointer to entry list.
- clipLX :INT -> Left X border in bytes (0/8)
- clipTY :INT -> Top Y border (0)
- clipRX :INT -> Right X border in bytes (320/8)
- clipBY :INT -> Bottom Y border (256)
- fplane :INT -> 1st Plane to blit to (planar only)
- planes :INT -> Amount of planes
- planesize :LONG -> Size Of Plane Source (planar only)
- attrib :LONG -> Attributes like CLIP and MASK.
- srcbitmap :PTR TO bitmap -> Pointer to a picture struct (bob origin).
- entrysize :INT -> Size of each entry in the list.
- srcmaskwidth :INT ->
- source :PTR TO picture ->
- directgfx :LONG ->
- screen :PTR TO screen ->
- destbitmap :PTR TO bitmap -> Pointer to Bob's Bitmap.
- maskcoords :PTR TO framelist -> Pointer to frame list for masks.
- directmasks :PTR TO LONG ->
- amtframes :INT ->
- ENDOBJECT
-
- CONST MBA_GfxData = 12 OR TAPTR,
- MBA_MaskData = 16 OR TAPTR,
- MBA_FrameList = 22 OR TAPTR,
- MBA_AmtEntries = 20 OR TWORD,
- MBA_SrcWidth = 26 OR TWORD,
- MBA_Width = 28 OR TWORD,
- MBA_ByteWidth = 30 OR TWORD,
- MBA_EntryList = 32 OR TWORD,
- MBA_Height = 36 OR TWORD,
- MBA_ClipLX = 38 OR TWORD,
- MBA_ClipTY = 40 OR TWORD,
- MBA_ClipRX = 42 OR TWORD,
- MBA_ClipBY = 44 OR TWORD,
- MBA_FPlane = 46 OR TWORD,
- MBA_Planes = 48 OR TWORD,
- MBA_PropHeight = 50 OR TWORD,
- MBA_PropWidth = 52 OR TWORD,
- MBA_Buffers = 54 OR TWORD,
- MBA_PlaneSize = 56 OR TLONG,
- MBA_Attrib = 60 OR TLONG,
- MBA_EntrySize = 68 OR TWORD,
- MBA_SrcMaskWidth = 70 OR TWORD,
- MBA_Source = 72 OR TAPTR,
- MBA_DirectList = 76 OR TAPTR,
- MBA_Screen = 80 OR TAPTR,
- MBA_DestBitmap = 84 OR TAPTR,
- MBA_MaskCoords = 88 OR TAPTR,
- MBA_DirectMasks = 92 OR TAPTR,
- MBA_AmtFrames = 96 OR TWORD
-
- /**************************************************************************/
-
- CONST BBF_CLIP = $00000001,
- BBF_MASK = $00000002,
- BBF_STILL = $00000004,
- BBF_CLEAR = $00000008,
- BBF_RESTORE = $00000010,
- BBF_FILLMASK = $00000040,
- BBF_GENMASK = $00000082,
- BBF_GENMASKS = $00000082,
- BBF_CLRMASK = $00000100,
- BBF_CLRNOMASK = $00000000
-
- CONST SKIPIMAGE = 32000,
- SKIPPIXEL = -32000
-
-